import { defaHttp, ApiRes } from "../index";
/**home数据 */
export async function apiHomeData(): Promise<void | HomeData.Res> {
  const res = await defaHttp.post<ApiRes<HomeData.Res>>("/index", undefined, {
    mode: { failMessage: true },
  });
  if (res.code !== 200) return;
  return res.data;
}
/**home数据 */
export namespace HomeData {
  export interface Res {
    /**
     * -，示例：-
     */
    address: Address;
    /**
     * BNB手续费，示例：0.0008850456
     */
    bnb_fee: string;
    /**
     * 储备池，示例：0
     */
    reserve_pools: number;
    /**
     * 理财币种信息，示例：-
     */
    storage_coin: StorageCoin;
    /**
     * 产品列表，示例：-
     */
    store: Store;
    /**
     * -，示例：-
     */
    user_info: UserInfo;
    /**
     * -，示例：-
     */
    vcc: Vcc;
    /**0不需要支付手续费；1需要支付手续费 */
    is_fee: number;
  }

  /**
   * -，示例：-
   */
  export interface Address {
    /**
     * -，示例：0x0000000000000000000000000000000000000000
     */
    black: string;
    /**
     * -，示例：0xbB2f0b9C423F50DaBB56e98777Da5406BFA2be93
     */
    storage_address: string;
  }

  /**
   * 理财币种信息，示例：-
   */
  export interface StorageCoin {
    /**
     * -，示例：USDT
     */
    code: string;
    /**
     * -，示例：0x11952129e0583f4d1df5e93384be07c405c11d6b
     */
    contract: string;
    /**
     * -，示例：18
     */
    decimal: number;
    /**
     * -，示例：1
     */
    id: number;
  }

  /**
   * 产品列表，示例：-
   */
  export interface Store extends AnyObject<string> {}

  /**
   * -，示例：-
   */
  export interface UserInfo {
    /**
     * -，示例：7
     */
    level: number;
    /**
     * -，示例：0
     */
    total: number;
    /**
     * -，示例：-
     */
    tree: Tree[][];
  }

  /**
   * -，示例：-
   */
  export interface Tree {
    /**
     * -，示例：0x1959cf95548a9f643fb9c9ce315e9b5b433c8827
     */
    address: string;
    /**
     * -，示例：10002
     */
    user_id: number;
    created_at: string;
    tree?: Tree[];
    level: number;
  }
  /**
   * -，示例：-
   */
  export interface Vcc {
    contract_addr: string;
    /**
     * 涨跌幅，示例：10.00
     */
    change: string;
    /**
     * vcc代币价格，示例：0.0010003940
     */
    price: string;
  }
}
